package com.star.warmwinter.http.api;

import io.reactivex.Observable;
import okhttp3.ResponseBody;
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.Streaming;

/**
 * Author: blackbai11
 * Date: 2016/11/17 15:44
 * Description: get请求
 */
public interface TestGetApi {
    /**
     *  路径替换（与请求方式无关，post等方式都能使用）
     * {} 用花括号包裹的是动态字符串 用@Path进行注解，参数名字必须一致
     */
//    @GET("/users/{user}/following")
//    Call<BaseEntity<List<UserBean>>> getUser(@Path(value = "user") String user);

    /**
     * get 无参请求
     * 返回bean对象 或 对象集合
     */
//    @GET("User")
//    Observable<BaseEntity<List<UserBean>>> getUser();

//    @GET("index/getUsers")
//    Observable<BaseEntity<UserBean>> getUserA();

    /**
     * get 带参请求
     * @Query 和 @QueryMap
     * 返回string
     */
    @GET("index/getString")
    Observable<String> getString();
//    Call<String> getString(@Query("userName") String phone, @Query("pwd") String pwd);
//    Call<String> getString( @QueryMap Map<String, String> params); //使用map封装参数多的情况

    /**
     * 下载
     */
    @Streaming
    @GET("apk/patch.patch")
    Call<ResponseBody> download();

}
